package com.mhy.utils.multiClick;

/**
 * 调用方法：
 *
 * btn.setOnClickListener(new View.OnClickListener() {
 *             @Override
 *             public void onClick(View v) {
 *                 if (Utils.isFastClick()) {
 *                     // 进行点击事件后的逻辑操作
 *                 }
 *             }
 *         });
 */

public class Utils {

    // 两次点击按钮之间的点击间隔不能少于1000毫秒
    private static final int MIN_CLICK_DELAY_TIME = 1000;
    private static long lastClickTime;

    public static boolean isFastClick() {
        boolean flag = false;
        long curClickTime = System.currentTimeMillis();
        if ((curClickTime - lastClickTime) >= MIN_CLICK_DELAY_TIME) {
            flag = true;
        }
        lastClickTime = curClickTime;
        return flag;
    }


    /**
     * 对Activity基类进行事件拦截，在BaseActivity中重写 dispatchTouchEvent方法：
     */

//    @Override
//    public boolean dispatchTouchEvent(MotionEvent ev) {
//        if (ev.getAction() == MotionEvent.ACTION_DOWN){
//            // 判断连续点击事件时间差
//            if (Utils.isFastClick()){
//                return true;
//            }
//        }
//        return super.dispatchTouchEvent(ev);


}
